home *** CD-ROM | disk | FTP | other *** search
/ STraTOS 1997 April & May / STraTOS 1 - 1997 April & May.iso / CD01 / PRGMANIA / VERSION1.5 / USER.C < prev    next >
Encoding:
C/C++ Source or Header  |  1996-12-16  |  13.7 KB  |  295 lines

  1. #include <xgemfast.h>
  2. #include "user.h"
  3.  
  4. /*-----------------------------------------------------------------------*/
  5. /*.Zone texte des differents objets......................................*/
  6. /*-----------------------------------------------------------------------*/
  7. /* Objets UserDefs */
  8. static char str_udf0[] = "";
  9. static char str_udf1[] = "";
  10. static char str_udf2[] = "";
  11. static char str_udf3[] = "";
  12. static char str_udf4[] = "";
  13. static char str_udf5[] = "";
  14.  
  15. /* Objet Aide */
  16. static char string_4[] = "1234567890123456789012345678901234567890";
  17. static char string_5[] = "";
  18. static char string_6[] = "";
  19. static char string_7[] = "1234567890123456789012345678901234567890";
  20. static char string_8[] = "";
  21. static char string_9[] = "";
  22. static char string_10[] = "1234567890123456789012345678901234567890";
  23. static char string_11[] = "";
  24. static char string_12[] = "";
  25.  
  26. /* Objet Slider */
  27. static char string_13[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
  28. static char string_14[] = "";
  29. static char string_15[] = "";
  30. static char string_16[] = "0.....................50.....................100";
  31. static char string_17[] = "";
  32. static char string_18[] = "";
  33. static char string_19[] = "100%";
  34. static char string_20[] = "____";
  35. static char string_21[] = "999X";
  36.  
  37. /* Objet Alerte */
  38. static char str_alt0[] = "123456789012345678901234567890123456789012345678901234567890";
  39. static char str_alt1[] = "";
  40. static char str_alt2[] = "";
  41. static char str_alt3[] = "123456789012345678901234567890123456789012345678901234567890";
  42. static char str_alt4[] = "";
  43. static char str_alt5[] = "";
  44. static char str_alt6[] = "123456789012345678901234567890123456789012345678901234567890";
  45. static char str_alt7[] = "";
  46. static char str_alt8[] = "";
  47. static char str_alt9[] = "123456789012345678901234567890123456789012345678901234567890";
  48. static char str_alt10[] = "";
  49. static char str_alt11[] = "";
  50. static char str_alt12[] = "123456789012345678901234567890123456789012345678901234567890";
  51. static char str_alt13[] = "";
  52. static char str_alt14[] = "";
  53. static char str_alt15[] = "123456789012345678901234567890123456789012345678901234567890";
  54. static char str_alt16[] = "";
  55. static char str_alt17[] = "";
  56. static char str_alt18[] = "12345678901234567890";
  57. static char str_alt19[] = "12345678901234567890";
  58. static char str_alt20[] = "12345678901234567890";
  59. static char str_alt21[] = "12345678901234567890";
  60.  
  61. /*-----------------------------------------------------------------------*/
  62. /*.Radio Bouton..........................................................*/
  63. /*-----------------------------------------------------------------------*/
  64. static int IMAGE0[] = {
  65. 0x0000, 0x03C0, 0x0FF0, 0x1FF8, 0x3FFC, 0x3FFC, 0x7FFE, 0x7FFE, 
  66. 0x7FFE, 0x7FFE, 0x3FFC, 0x3FFC, 0x1FF8, 0x0FF0, 0x03C0, 0x0000};
  67.  
  68. static int IMAGE1[] = {
  69. 0x0000, 0x03C0, 0x0C30, 0x1008, 0x23CC, 0x242C, 0x4816, 0x4816, 
  70. 0x4816, 0x4816, 0x242C, 0x23CC, 0x1C38, 0x0FF0, 0x03C0, 0x0000};
  71.  
  72. static int IMAGE2[] = {
  73. 0x0000, 0x03C0, 0x0FF0, 0x1FF8, 0x3FFC, 0x3FFC, 0x7FFE, 0x7FFE, 
  74. 0x7FFE, 0x7FFE, 0x3FFC, 0x3FFC, 0x1FF8, 0x0FF0, 0x03C0, 0x0000};
  75.  
  76. static int IMAGE3[] = {
  77. 0x0000, 0x03C0, 0x0FF0, 0x1C38, 0x3184, 0x37E4, 0x67E2, 0x6FF2, 
  78. 0x6FF2, 0x67E2, 0x37E4, 0x3184, 0x1008, 0x0C30, 0x03C0, 0x0000};
  79.  
  80. /*-----------------------------------------------------------------------*/
  81. /*.Boite a cocher........................................................*/
  82. /*-----------------------------------------------------------------------*/
  83. static int IMAGE4[] = {
  84. 0x0000, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 
  85. 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE};
  86.  
  87. static int IMAGE5[] = {
  88. 0x0000, 0xFFFE, 0x8006, 0x8006, 0x8006, 0x8006, 0x8006, 0x8006, 
  89. 0x8006, 0x8006, 0x8006, 0x8006, 0x8006, 0x8006, 0xFFFE, 0xFFFE};
  90.  
  91. static int IMAGE6[] = {
  92. 0x0000, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 
  93. 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE, 0xFFFE};
  94.  
  95. static int IMAGE7[] = {
  96. 0x0000, 0xFFFE, 0xFFFE, 0xC002, 0xC012, 0xC032, 0xC032, 0xC062, 
  97. 0xC462, 0xC4C2, 0xC6C2, 0xC282, 0xC382, 0xC102, 0xC002, 0xFFFE};
  98.  
  99. /*-----------------------------------------------------------------------*/
  100. /*.Bouton PopUp..........................................................*/
  101. /*-----------------------------------------------------------------------*/
  102. static int IMAGE8[] = {
  103. 0xFFFE, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 
  104. 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0x7FFF};
  105.  
  106. static int IMAGE9[] = {
  107. 0xFFFE, 0x8003, 0x97C3, 0x9823, 0x9C13, 0x800B, 0xA00B, 0xA00B, 
  108. 0xA00B, 0xA003, 0x9073, 0x8833, 0x87D3, 0x8003, 0xFFFF, 0x7FFF};
  109.  
  110. static int IMAGE10[] = {
  111. 0xFFFE, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 
  112. 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0x7FFF};
  113.  
  114. static int IMAGE11[] = {
  115. 0xFFFE, 0x8003, 0x8783, 0x883B, 0x9033, 0xA02B, 0xA00B, 0xA00B, 
  116. 0xA00B, 0xA80B, 0x9813, 0xB823, 0x83C3, 0x8003, 0xFFFF, 0x7FFF};
  117.  
  118. /*-----------------------------------------------------------------------*/
  119. /*.Dessin de l'icone utilisé lors de l'iconification d'une fenetre.......*/
  120. /*-----------------------------------------------------------------------*/
  121. static int ICONMASK[] =
  122. { 0x0000, 0x0000, 0x0000, 0x0000, 
  123.   0x0000, 0x0000, 0x0000, 0x7000, 
  124.   0x0000, 0xF800, 0x0003, 0xFC00, 
  125.   0x000F, 0xFF00, 0x003F, 0xDFC0, 
  126.   0x0EFF, 0xFFF8, 0x0FFF, 0xFFFF, 
  127.   0x0FFF, 0xFFFF, 0x0FFF, 0xFF3F, 
  128.   0x0FFF, 0xFFFF, 0x0FFF, 0xFFFF, 
  129.   0x0FFF, 0xFFFF, 0x0FFF, 0xFFFF, 
  130.   0x0FFF, 0xFFFF, 0x0FFF, 0xFFFF, 
  131.   0x0FFF, 0xFFFF, 0x0FFF, 0xFFFF, 
  132.   0x0FFF, 0xFFFF, 0x0FFF, 0xF7FF, 
  133.   0x0FFF, 0xFFFF, 0x1FFF, 0xFFFF, 
  134.   0xFFFF, 0xFFFF, 0xFFFF, 0xF7FC, 
  135.   0xFFFF, 0xFFF0, 0xFFFF, 0xFFC0, 
  136.   0xFFFF, 0xFF00, 0xFFFF, 0xFC00, 
  137.   0xFFFF, 0xF000, 0xFFFF, 0x0000
  138. };
  139.  
  140. static int ICONDATA[] =
  141. { 0x0000, 0x0000, 0x0000, 0x0000, 
  142.   0x0000, 0x0000, 0x0000, 0x0000, 
  143.   0x0000, 0x2000, 0x0000, 0x5000, 
  144.   0x0001, 0x8800, 0x0006, 0x0600, 
  145.   0x001C, 0x0F80, 0x047F, 0x3FF0, 
  146.   0x079F, 0xFE0E, 0x0407, 0xF002, 
  147.   0x079F, 0xFC1A, 0x057E, 0x7F62, 
  148.   0x06B8, 0x1F80, 0x057E, 0x0792, 
  149.   0x06FB, 0x9BE0, 0x077D, 0x6386, 
  150.   0x07BE, 0xA7DA, 0x05FF, 0xEBA0, 
  151.   0x06FB, 0xA3E2, 0x057D, 0xE38A, 
  152.   0x06BE, 0xE3F2, 0x077F, 0x6FC6, 
  153.   0x0BBA, 0xA398, 0x557D, 0xE3E0, 
  154.   0xAABA, 0xA380, 0x5557, 0x6600, 
  155.   0xAAAB, 0xB800, 0x5555, 0x6000, 
  156.   0xAAAA, 0x0000, 0x5554, 0x0000
  157. };
  158.  
  159. /*-----------------------------------------------------------------------*/
  160. /*.Dessin de l'icone utilisé dans la boite d'alerte......................*/
  161. /*-----------------------------------------------------------------------*/
  162. static int AlertImage[] =
  163. {
  164. 0xFFFF, 0xFFFF, 0x8000, 0x0001, 0xBFFF, 0xFFFD, 0xA000, 0x0005, 
  165. 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 
  166. 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 
  167. 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 
  168. 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 
  169. 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 
  170. 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 0xA000, 0x0005, 
  171. 0xA000, 0x0005, 0xBFFF, 0xFFFD, 0x8000, 0x0001, 0xFFFF, 0xFFFF
  172. };
  173.  
  174. /*-----------------------------------------------------------------------*/
  175. /*.Structure contenant les images des differents objets..................*/
  176. /*-----------------------------------------------------------------------*/
  177. static BITBLK rs_bitblk[] =
  178. {
  179.     { (short *)AlertImage, 4, 32, 0, 0, 1 },
  180. };
  181.  
  182. /*-----------------------------------------------------------------------*/
  183. /*.Structure contenant les icones des differents objets..................*/
  184. /*-----------------------------------------------------------------------*/
  185. static ICONBLK rs_iconblk[] =
  186. {
  187.     { (short *)IMAGE0, (short *)IMAGE1, str_udf0, 4096,0,0, 0,0,16,16, 0,0,0,8 },
  188.     { (short *)IMAGE2, (short *)IMAGE3, str_udf1, 4096,0,0, 0,0,16,16, 0,0,0,8 },
  189.     { (short *)IMAGE4, (short *)IMAGE5, str_udf2, 4096,0,0, 0,0,16,16, 0,0,0,8 },
  190.     { (short *)IMAGE6, (short *)IMAGE7, str_udf3, 4096,0,0, 0,0,16,16, 0,0,0,8 },
  191.     { (short *)IMAGE8, (short *)IMAGE9, str_udf4, 4096,0,0, 0,0,16,16, 0,0,0,8 },
  192.     { (short *)IMAGE10,(short *)IMAGE11,str_udf5, 4096,0,0, 0,0,16,16, 0,0,0,8 },
  193.     { (short *)ICONMASK, (short *)ICONDATA, "ICONIFIED\000\000\000", 0x1000|'\0',5,14,10,0,32,32,-10,32,72,8},
  194. };
  195.  
  196. /*-----------------------------------------------------------------------*/
  197. /*.Structure contenant les definitions des objets Text...................*/
  198. /*-----------------------------------------------------------------------*/
  199. static TEDINFO rs_tedinfo[] =
  200. {
  201.     { string_4 , string_5 , string_6 , 5, 6, 0, 0x1100, 0x0, 0, 41,1 },
  202.     { string_7 , string_8 , string_9 , 5, 6, 0, 0x1100, 0x0, 0, 41,1 },
  203.     { string_10, string_11, string_12, 5, 6, 0, 0x1100, 0x0, 0, 41,1 },
  204.     { string_13, string_14, string_15, 3, 6, 2, 0x1180, 0x0,-1, 37,1 },
  205.     { string_16, string_17, string_18, 5, 6, 0, 0x1100, 0x0,-1, 49,1 },
  206.     { string_19, string_20, string_21, 3, 6, 2, 0x1180, 0x0,-1,  5,5 },
  207.     { str_alt0 , str_alt1 , str_alt2 , 3, 6, 0, 0x1180, 0x0,-1, 51,1 },
  208.     { str_alt3 , str_alt4 , str_alt5 , 3, 6, 0, 0x1180, 0x0,-1, 51,1 },
  209.     { str_alt6 , str_alt7 , str_alt8 , 3, 6, 0, 0x1180, 0x0,-1, 51,1 },
  210.     { str_alt9 , str_alt10, str_alt11, 3, 6, 0, 0x1180, 0x0,-1, 51,1 },
  211.     { str_alt12, str_alt13, str_alt14, 3, 6, 0, 0x1180, 0x0,-1, 51,1 },
  212.     { str_alt15, str_alt16, str_alt17, 3, 6, 0, 0x1180, 0x0,-1, 51,1 },
  213. };
  214.  
  215. /*************************************************************************/
  216. /*.Objet contenant les boutons UserDefs..................................*/
  217. /*************************************************************************/
  218. OBJECT rs_object[] = 
  219. {
  220.     {-1,  1,  6, G_BOX ,  NONE  , OUTLINED, (long)(0x21101L)      , 0, 0,    9,    5 },
  221.     { 2, -1, -1, G_ICON,  NONE  , NORMAL  , (long)(&rs_iconblk[0]), 2, 1, 4096, 4096 },
  222.     { 3, -1, -1, G_ICON,  NONE  , NORMAL  , (long)(&rs_iconblk[1]), 5, 1, 4096, 4096 },
  223.     { 4, -1, -1, G_ICON,  NONE  , NORMAL  , (long)(&rs_iconblk[2]), 2, 3, 4096, 4096 },
  224.     { 5, -1, -1, G_ICON,  NONE  , NORMAL  , (long)(&rs_iconblk[3]), 5, 3, 4096, 4096 },
  225.     { 6, -1, -1, G_ICON,  NONE  , NORMAL  , (long)(&rs_iconblk[4]), 2, 5, 4096, 4096 },
  226.     { 0, -1, -1, G_ICON,  LASTOB, NORMAL  , (long)(&rs_iconblk[5]), 5, 5, 4096, 4096 },
  227. };
  228.  
  229. /*************************************************************************/
  230. /*.Objet contenant l'icone pour iconification............................*/
  231. /*************************************************************************/
  232. OBJECT rs_object1[] =
  233. {
  234.     {-1, 1, 1, G_BOX , NONE  , NORMAL, (long)(0x00000000L)   , 0, 0, 70, 52},
  235.   { 0,-1,-1, G_ICON, LASTOB, NORMAL, (long)(&rs_iconblk[6]), 1, 0,  4,  4},
  236. };
  237.  
  238. /*************************************************************************/
  239. /*.OBJET BOX_HELP pour l'aide continue sur les objets d'un formulaire....*/
  240. /*************************************************************************/
  241. OBJECT rs_object2[] = 
  242. {
  243.     {-1, 1, 3, G_BOX , 0x400 , NORMAL, (long)(0x21146L)      ,   0,    0, 1566, 1026 },
  244.     { 2,-1,-1, G_TEXT, NONE  , NORMAL, (long)(&rs_tedinfo[0]), 512,    0,   30,    1 },
  245.     { 3,-1,-1, G_TEXT, NONE  , NORMAL, (long)(&rs_tedinfo[1]), 512, 2560,   30,    1 },
  246.     { 0,-1,-1, G_TEXT, LASTOB, NORMAL, (long)(&rs_tedinfo[2]), 512, 1025,   30,    1 },
  247. };
  248.  
  249. /*************************************************************************/
  250. /*.OBJET SLIDER..........................................................*/
  251. /*************************************************************************/
  252. OBJECT rs_object3[] =
  253. {
  254.     {-1, 1, 5, G_BOX , 0x400, OUTLINED, (long)(0x21100L)      ,   0,   0,  38,2564 },
  255.     { 2,-1,-1, G_TEXT, 0x400, NORMAL  , (long)(&rs_tedinfo[3]),   1,2048,  36,   1 },
  256.     { 4, 3, 3, G_BOX , 0x600, SELECTED, (long)(0xFF1178L)     ,   1,3073,  36,   1 },
  257.     { 2,-1,-1, G_BOX , 0x600, NORMAL  , (long)(0xFFB163L)     , 512, 256,   7,3584 },
  258.     { 5,-1,-1, G_TEXT, 0x400, NORMAL  , (long)(&rs_tedinfo[4]),   1,3074,1061,   1 },
  259.     { 0,-1,-1, G_TEXT, 0x420, NORMAL  , (long)(&rs_tedinfo[5]),1551,1539,   5,   1 },
  260. };
  261.  
  262. /*************************************************************************/
  263. /*.OBJET ALERTE..........................................................*/
  264. /*************************************************************************/
  265. OBJECT rs_object4[] =
  266. {
  267.     {-1, 1, 12, G_BOX   , 0x600, OUTLINED, (long)(0x21100L)       , 2,   1,  58,  10 },
  268.     { 2,-1, -1, G_IMAGE , NONE , NORMAL  , (long)(&rs_bitblk[0])  , 1,2049,8192,8192 },
  269.     { 3,-1, -1, G_TEXT  , 0x400, NORMAL  , (long)(&rs_tedinfo[6]) , 7,1536,  50,   1 },
  270.     { 4,-1, -1, G_BOX   , 0x600, NORMAL  , (long)(0x1101L)        , 7,1025,  50, 256 },
  271.     { 5,-1, -1, G_TEXT  , 0x400, NORMAL  , (long)(&rs_tedinfo[7]) , 7,   2,  50,   1 },
  272.     { 6,-1, -1, G_TEXT  , 0x400, NORMAL  , (long)(&rs_tedinfo[8]) , 7,   3,  50,   1 },
  273.     { 7,-1, -1, G_TEXT  , 0x400, NORMAL  , (long)(&rs_tedinfo[9]) , 7,   4,  50,   1 },
  274.     { 8,-1, -1, G_TEXT  , 0x400, NORMAL  , (long)(&rs_tedinfo[10]), 7,   5,  50,   1 },
  275.     { 9,-1, -1, G_TEXT  , 0x400, NORMAL  , (long)(&rs_tedinfo[11]), 7,   6,  50,   1 },
  276.     {10,-1, -1, G_BUTTON, 0x605, NORMAL  , (long)(str_alt18)      , 7,   8,  12,   1 },
  277.     {11,-1, -1, G_BUTTON, 0x605, NORMAL  , (long)(str_alt19)      ,20,   8,  12,   1 },
  278.     {12,-1, -1, G_BUTTON, 0x605, NORMAL  , (long)(str_alt20)      ,33,   8,  12,   1 },
  279.     { 0,-1, -1, G_BUTTON, 0x625, NORMAL  , (long)(str_alt21)      ,46,   8,  12,   1 },
  280. };
  281.  
  282. /*************************************************************************/
  283. /*.Liste des objets......................................................*/
  284. /*************************************************************************/
  285. OBJECT *rs_trindex[] = 
  286. {
  287.     &rs_object[0],                /* USERDEFS */
  288.     &rs_object1[0],                /* ICONE */
  289.     &rs_object2[0],                /* BOX_HELP */
  290.     &rs_object3[0],                /* SLIDER */
  291.     &rs_object4[0],                /* ALERTE */
  292. };
  293.  
  294. int rs_nb_tree = 5;    /* 5 objets (0 à 4) */
  295.